Static program analysis of multi-applet JavaCard applications
نویسندگان
چکیده
Java Card provides a framework of classes and interfaces that hides the details of the underlying smart card interface and makes it possible to load and run on the same card several applets, from different application providers with complex trust relationships. This fact opens prospects for new business applications, but the card issuer has to secure absence of malicious or faulty card applets. He has to be able to check that (i) applets do not cause illicit method invocations that violate temporal restrictions of inter-applet communication, (ii) applets protect themselves from unwanted information flow to third parties and (iii) it is not possible for an unhandled Java Card API exception to leave an applet in an unpredictable state that is potentially dangerous for the application’s security. We explore recent advances in theory and tool support of static program analysis and we present an approach for automatic verification of smart card applications that by definition are security critical.
منابع مشابه
USENIX Association Proceedings of the 5 th Smart Card Research and Advanced Application Conference
The paper describes a framework for model checking JavaCard applets on the bytecode level. From a set of JavaCard applets we extract their method call graphs using a static analysis tool. The resulting structure is translated into a pushdown system for which the model checking problem for Linear Temporal Logic (LTL) is decidable, and for which there are efficient model checking tools available....
متن کاملTowards Development of Safe and Secure JAVACARD Applets
This thesis is concerned with different aspects of JAVACARD application development and use of formal methods in the JAVACARD world. JAVACARD is a technology that provides means to program smart (chip) cards with (a subset of) the JAVA language. The use of formal methods in the JAVACARD context is highly justified due to the criticality of JAVACARD applications. First of all, JAVACARD applicati...
متن کاملFormalisation and Verification of Java Card Security Properties in Dynamic Logic
We present how common JAVACARD security properties can be formalised in Dynamic Logic and verified, mostly automatically, with the KeY system. The properties we consider, are a large subset of properties that are of importance to the smart card industry. We discuss the properties one by one, illustrate them with examples of real-life, industrial size, JAVACARD applications, and show how the pro...
متن کاملSawjaCard: A Static Analysis Tool for Certifying Java Card Applications
This paper describes the design and implementation of a static analysis tool for certifying Java Card applications, according to security rules defined by the smart card industry. Java Card is a dialect of Java designed for programming multi-application smart cards and the tool, called SawjaCard, has been specialised for the particular Java Card programming patterns. The tool is built around a ...
متن کاملFormal Methods Research at SICS and KTH: An Overview
The Formal Design Techniques (FDT) Lab at SICS 3 with associated members at the Laboratory of Electronics and Computer Systems (LECS) at the Department of Microelectronics and Information Technology, KTH 4 performs research on theories, tools, and applications of formal methods with particular emphasis on security aspects of distributed systems. The overall focus is on automated and semiautomat...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2009